<?php

namespace Home\Model;
use Think\Model;
class BaseModel extends Model
{
   // Protected $autoCheckFields = false;

    public $rules = array (
        array('create_time','time',1,'function'),// 对update_time字段在新增的时候写入当前时间戳
        array('update_time','time',3,'function'), // 对update_time字段在新增和更新的时候写入当前时间戳
    );

    /**
     * 执行原生sql语句
     * string $sql 要执行的sql语句
     * return
    **/
    public function sql_query($sql)
    {
        $Model = new \Think\Model(); // 实例化一个model对象 没有对应任何数据表
        return $Model->query($sql);
    }

    /**
     * 重构数组结构
     * array $arr 要重构的数组
     * string $key1 按此键名分组 支持【class_name&class_id 这两个必须同步】
     * string $key2 新设键名
     * return  array
     **/
    public function parseSqlData($arr, $key1 = 'class_name&bid', $key2 = 'items')
    {
        $key1 = empty($key1) ? 'class_name&bid' : $key1;
        $key2 = empty($key2) ? 'items' : $key2;

        $j = 0;
        $arr_new = [];
        if(strpos($key1, '&') !== false)
        {
            $key1s = explode('&', $key1);
            $key1 = $key1s[0];
        }

        foreach ($arr as $k => $val)
        {
            if($k == 0)
            {
               foreach ($key1s as $v)
               {
                   $arr_new[$j][$v] = $val[$v];
               }

            }

            if($k != 0 && $arr[$k][$key1] != $arr[$k-1][$key1])
            {
                $j++;
                //$arr_new[$j][$key1] = $val[$key1] ;
                foreach ($key1s as $v)
                {
                    $arr_new[$j][$v] = $val[$v] ;
                }
            }
            //$arr_new[$j][$key1] = $val[$key1] ;
            foreach ($key1s as $v)
            {
                unset($val[$v]);
            }
            $arr_new[$j][$key2][] = $val;
        }
        return $arr_new;
    }



}